#!/bin/bash

# Tauri 开发服务器启动脚本

LOG_FILE="tauri-dev.log"
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"

# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color

# 检查是否已有 Tauri 进程运行
check_running() {
    local running_pids=$(ps aux | grep -E "$PROJECT_DIR.*tauri dev" | grep -v grep | awk '{print $2}')
    if [ -n "$running_pids" ]; then
        echo -e "${YELLOW}Tauri 开发服务器已在运行中 (PID: $running_pids)${NC}"
        return 0
    fi
    return 1
}

# 启动服务
start_service() {
    if check_running; then
        return 1
    fi
    
    echo -e "${GREEN}启动 Tauri 开发服务器...${NC}"
    cd "$PROJECT_DIR"
    nohup npm run tauri dev > "$LOG_FILE" 2>&1 &
    local pid=$!
    
    # 等待服务启动
    sleep 3
    if ps -p $pid > /dev/null 2>&1; then
        echo -e "${GREEN}✅ Tauri 开发服务器启动成功 (PID: $pid)${NC}"
        echo -e "${GREEN}📋 日志文件: $LOG_FILE${NC}"
    else
        echo -e "${RED}❌ 启动失败，请检查日志文件${NC}"
        return 1
    fi
}

# 启动服务
start_service